package demoSet;

import demo2.Emp;

import java.util.Iterator;
import java.util.List;
import java.util.Set;

public class TestSet {
    public void addEmp(Set<Emp> set, Emp emp) {
        set.add(emp);
    }

    public void findAllEmp(Set<Emp> set) {
        for (Emp emp : set) {
            System.out.println(emp);
        }
    }

    public Emp findEmpName(Set<Emp> set, String empName) {
        for (Emp emp : set) {
            if (empName.equals(emp.getName())) {
                return emp;
            }
        }
        return null;
    }

    public void deleteEmp(Set<Emp> set, String empNumber) {
        Iterator<Emp> iterator = set.iterator();
        while (iterator.hasNext()) {
            Emp emp = iterator.next();
            if (empNumber.equals(emp.getNumber())) {
                iterator.remove();
                break; // 使用 break 避免并发修改异常
            }
        }
    }

    public Emp findEmpNumber(Set<Emp> set, String empNumber) {
        for (Emp emp : set) {
            if (empNumber.equals(emp.getNumber())) {
                return emp;
            }
        }
        return null;
    }

    public void updateEmp(Set<Emp> set, Emp emp) {
        // 删除旧的 emp 对象
        Iterator<Emp> iterator = set.iterator();
        while (iterator.hasNext()) {
            Emp e = iterator.next();
            if (e.getNumber().equals(emp.getNumber())) {
                iterator.remove();
                break;
            }
        }
        // 添加更新后的 emp 对象
        set.add(emp);
    }
}



